﻿﻿#define _CRT_SECURE_NO_WARNINGS 1
//0 1 2 3 4 5 6 7 8 9 a b c d e f 
//0~15
//15 -> 1111

//int main()
//{
//	int a = -10;//4个字节 - 32bit位
//	//10000000000000000000000000001010
//	//11111111111111111111111111110101
//	//11111111111111111111111111110110 (-10的补码)
//	//1111 1111 1111 1111 1111 1111 1111 0110
//	//f    f    f    f    f    f    f    6
//	//0x ff ff ff f6
//
//	unsigned int b = -10;
//	//11111111111111111111111111110110
//	
//	return 0;
//}

//int main()
//{
//	//1-1
//	//1+(-1)
//	//00000000000000000000000000000001
//	//10000000000000000000000000000001
//	//11111111111111111111111111111110
//	//11111111111111111111111111111111
//	//00000000000000000000000000000001
//	//00000000000000000000000000000000
//	//
//
//	return 0;
//}
//
//int main()
//{
//	int a = 0x11223344;
//
//	return 0;
//}
//#include <stdio.h>

//int check_sys()
//{
//	int a = 1;
//	char* p = (char*)&a;//int*
//
//	if (*p == 1)
//		return 1;
//	else
//		return 0;
//}

//int check_sys()
//{
//	int a = 1;
//	return *(char*)&a;
//}
//
//int main()
//{
//	if (1 == check_sys())
//	{
//		printf("小端\n");
//	}
//	else
//	{
//		printf("大端\n");
//	}
//
//	return 0;
//}


//#include <stdio.h>
//int main()
//{
//	char a = -1;
//	//10000000000000000000000000000001
//	//11111111111111111111111111111110
//	//11111111111111111111111111111111
//	//11111111 - a
//	signed char b = -1;
//	//11111111 - b
//	unsigned char c = -1;
//	//11111111 - c
//	//
//	printf("a=%d,b=%d,c=%d", a, b, c);
//	//%d 是10进制的形式打印有符号的整数
//	//00000000000000000000000011111111
//	//
//	return 0;
//}


//#include <stdio.h>
//int main()
//{
//	char a = -128;
//	//10000000000000000000000010000000
//	//11111111111111111111111101111111
//	//11111111111111111111111110000000
//	//10000000 - a
//	//
//	//11111111111111111111111110000000
//	//
//	printf("%u\n", a);
//	//
//	
//	//%u 是10进制的形式，打印无符号的整数
//	//%d 是10进制的形式，打印有符号的整数
//	return 0;
//}

//#include <stdio.h>
//char :-128~127

//int main()
//{
//	char a = 128;
//	//00000000000000000000000010000000
//	//11111111111111111111111110000000 - a
//	printf("%u\n", a);
//  //截断
//	return 0;
//}
//

//
//int main()
//{
//	int i = -20;
//	//10000000000000000000000000010100
//	//11111111111111111111111111101011
//	//11111111111111111111111111101100
//	//
//	unsigned int j = 10;
//	//00000000000000000000000000001010
//	//11111111111111111111111111101100
//	//
//	//11111111111111111111111111110110
//	//10000000000000000000000000001001
//	//10000000000000000000000000001010
//	printf("%d\n", i + j);//-10
//
//	return 0;
//}
//

//#include <windows.h>
//
//int main()
//{
//	unsigned int i;
//	
//	for (i = 9; i >= 0; i--)
//	{
//		printf("%u\n", i);
//		Sleep(1000);
//	}
//
//	return 0;
//}

//int main()
//{
//	char a[1000];
//	//-1 -2 -3 -4 -5 .. -128 127 .. 6 5 4 3 2 1 0  
//	//128 + 127 = 255
//	int i;
//
//	for (i = 0; i < 1000; i++)
//	{
//		a[i] = -1 - i;
//	}
//
//	printf("%d", strlen(a));
//	//
//	//strlen 统计的是\0之前出现的字符的个数
//	//\0 - 0 \ddd
//	return 0;
//}
//

//#include <stdio.h>
//unsigned char i = 0;//0~255
//
//int main()
//{
//	for (i = 0; i <= 255; i++)
//	{
//		printf("hello world\n");
//	}
//
//	return 0;
//}
//

//#include <stdio.h>
//int main()
//{
//	int n = 9;
//	//0 00000000 00000000000000000001001
//	//E=-126
//	//M = 0.00000000000000000001001
//	//S=0
//	//(-1)^0 * 0.00000000000000000001001 * 2^-126
//	//
//	float* pFloat = (float*)&n;//int*
//
//	printf("n的值为：%d\n", n);//9
//	printf("*pFloat的值为：%f\n", *pFloat);//? 0.000000
//
//	*pFloat = 9.0;
//	//9.0
//	//1001.0
//	//(-1)^0 * 1.001 * 2^3
//	//01000001000100000000000000000000
//	//
//	printf("num的值为：%d\n", n);//?-> 1,091,567,616
//
//	printf("*pFloat的值为：%f\n", *pFloat);//9.0
//
//	return 0;
//}

#include <stdio.h>
int main()
{
	float f = 5.5;
	//5.5
	//101.1
	//(-1)^0 * 1.011 * 2^2
	//S=0
	//M=1.011
	//E=2
	//0100 0000 1011 0000 0000000000000000
	//40 b0 00 00
	printf("%lf\n",E);

	return 0;
}